小编Iam*_*619的帖子

上传到互联网后,录制的视频旋转90度

我发现以纵向模式录制的视频将旋转90度.因此,当我设置mediaRecorder时,我使用以下代码来旋转它:

 if (this.getResources().getConfiguration().orientation !=Configuration.ORIENTATION_LANDSCAPE)
{
     mediaRecorder.setOrientationHint(270);
}
 else
{
     mediaRecorder.setOrientationHint(0);
}

mediaRecorder.setOutputFile(file_name);                  
mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.DEFAULT);
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
Run Code Online (Sandbox Code Playgroud)

由于我在surfaceCreated方法中使用了以下代码,因此预览也是正确的方向:

Camera.Parameters params = camera.getParameters();

if (this.getResources().getConfiguration().orientation
     !=Configuration.ORIENTATION_LANDSCAPE)
{   
  camera.setDisplayOrientation(90);

}
else
{   
  camera.setDisplayOrientation(0);                  
}

  params.setRotation(90);
  camera.setParameters(params);
Run Code Online (Sandbox Code Playgroud)

这样,在设备上播放时,录制的视频方向正确.然而,在上传到互联网后,视频仍然可以旋转90度.有没有人对此提出建议?非常感谢.

android video-recording autorotate

18
推荐指数
1
解决办法
2704
查看次数

本地时间转换为Hive中的UTC时间

我在互联网上搜索了很多,却找不到答案.这是我的问题:

我正在Hive中写一些查询.我有一个UTC时间戳,并希望将其更改为UTC时间,例如,给定时间戳1349049600,我想将其转换为UTC时间,即2012-10-01 00:00:00.但是如果我from_unixtime(1349049600)在Hive中使用内置函数,我会得到本地PDT时间2012-09-30 17:00:00.

我意识到有一个内置函数叫做from_utc_timestamp(timestamp, string timezone).然后我尝试了from_utc_timestamp(1349049600, "GMT"),输出是1970-01-16 06:44:09.6这是完全错误的.

我不想永久更改Hive的时区,因为还有其他用户.那么我有什么方法可以获得从1349049600到"2012-10-01 00:00:00"的UTC时间戳字符串?非常感谢!!

timestamp hive utc

13
推荐指数
3
解决办法
5万
查看次数

如何从Perl中的哈希表中获取前n个键值对

我对perl很新,所以我搜索了一段时间,但仍然得到答案.我想从哈希表中获得前100对,但不知道如何做到这一点.要从哈希表中获取每对,我们可以执行以下操作:

foreach my $term (keys %hashtable)
{
    do something regarding $hashtable{$term} here
}
Run Code Online (Sandbox Code Playgroud)

但如何获得前100对呢?非常感谢!

perl hash

4
推荐指数
2
解决办法
4944
查看次数

从PDF等二进制文件中读取文本

我在使用C++读取二进制文件时遇到问题.目前我的代码是这样的:

FILE *s=fopen(source, "rb");
fseek(s,0,SEEK_END);
size_file size=ftell(s);
rewind(s);

char *sbuffer=(char *) malloc(sizeof(char) * size);
if(sbuffer==NULL){
    fputs("Memory error", stderr);
    exit(2);
}
size_t result=fread(sbuffer,1,size,s);
if(result != size){
    fputs("Reading error",stderr);
    exit(3);
}
fclose(s);
cout<<sbuffer<<endl;
Run Code Online (Sandbox Code Playgroud)

但是,在终端上打印的字符都是随机字符,而不是我在PDF文件中写的字符.他们就像:

% P D F - 1 . 3 
 % ? ? ? ? ? ? ? ? ? ? ? 
 4   0   o b j 
 < <   / L e n g t h   5   0   R   / F i l t e r   / F l a …
Run Code Online (Sandbox Code Playgroud)

c++ file-io

-1
推荐指数
1
解决办法
6169
查看次数

标签 统计

android ×1

autorotate ×1

c++ ×1

file-io ×1

hash ×1

hive ×1

perl ×1

timestamp ×1

utc ×1

video-recording ×1